#include<cairo.h>

int
main(int argc, char* argv[]){
  cairo_surface_t *sfc = cairo_image_surface_create(CAIRO_FORMAT_ARGB32, 1600, 1000);
  cairo_t * cr = cairo_create(sfc);

  // 将当前point设置为(800,0)坐标点
  cairo_move_to(cr, 800, 0);
  // 绘制直线到(100,500)坐标点，当前point变为(100,500)坐标点
  cairo_line_to(cr, 100, 500);

  // 以当前point为起始点绘制贝赛尔曲线
  cairo_curve_to(cr, 0,0,// 第一个控制点坐标
    1600,1000,// 第二个控制点坐标
    1500,500);// 结束点坐标
  // 绘制完成后，当前point会被设置为结束点

  // 闭合当前子路径，会自动绘制当前point到子路径起始点(800,0)的连线
  cairo_close_path(cr);

  cairo_stroke(cr);

  cairo_surface_write_to_png(sfc, "d.png");

  return 0;
}//main